package com.zs.admin.service.wisdbook;

import com.zs.admin.validate.commons.PageValidate;
import com.zs.admin.validate.wisdbook.WisdbookCreateValidate;
import com.zs.admin.validate.wisdbook.WisdbookUpdateValidate;
import com.zs.admin.validate.wisdbook.WisdbookSearchValidate;
import com.zs.admin.vo.wisdbook.WisdbookListedVo;
import com.zs.admin.vo.wisdbook.WisdbookDetailVo;
import com.zs.admin.vo.wisdbook.WisdbookStaticsVo;
import com.zs.common.core.PageResult;

/**
 * 智书服务接口类
 * @author SwAdmin
 */
public interface IWisdbookService {

    /**
     * 智书列表
     *
     * @author SwAdmin
     * @param pageValidate 分页参数
     * @param searchValidate 搜索参数
     * @return PageResult<WisdbookListedVo>
     */
    PageResult<WisdbookListedVo> list(PageValidate pageValidate, WisdbookSearchValidate searchValidate);

    /**
     * 智书详情
     *
     * @author SwAdmin
     * @param id 主键ID
     * @return WisdbookDetailVo
     */
    WisdbookDetailVo detail(Integer id);


    WisdbookStaticsVo statics(Integer id);

    /**
     * 智书新增
     *
     * @author SwAdmin
     * @param createValidate 参数
     */
    void add(WisdbookCreateValidate createValidate);

    /**
     * 智书编辑
     *
     * @author SwAdmin
     * @param updateValidate 参数
     */
    void edit(WisdbookUpdateValidate updateValidate);

    /**
     * 智书删除
     *
     * @author SwAdmin
     * @param id 主键ID
     */
    void del(Integer id);

}
